package model.network.api

import model.dto.AddFriendDTO
import model.dto.GroupDTO
import model.dto.ProcessApplyDto
import model.vo.GroupVO
import model.vo.R
import model.vo.SearchedItem
import model.vo.UserVo
import retrofit2.http.Body
import retrofit2.http.GET
import retrofit2.http.POST
import retrofit2.http.Query
import javax.swing.GroupLayout.Group


/**
 * @author wei kunJie
 * @date 2024/4/16 16:36:08
 */
interface ChannelMappingService {
    @POST("/business/channel/friend/addFriend")
    suspend fun addFriend(@Body addFriendDTO: AddFriendDTO): R<Any>

    @GET("/business/channel/friend/searchChannelMapping")
    suspend fun searchChannelMapping(@Query("keyword") keyword: String): R<List<SearchedItem>>

    @POST("/business/channel/friend/processFriendRequest")
    suspend fun processFriendRequest(@Body processApplyDto: ProcessApplyDto):R<Any>

    @GET("/business/channel/friend/getFriendByAccount")
    suspend fun getFriendByAccount(@Query("account") account:String):R<UserVo>

    @POST("/business/channel/group/createGroup")
    suspend fun createGroup(@Body groupDTO: GroupDTO):R<GroupVO>
}